// GUIEvent.h

#ifndef GUIEvent_h
#define GUIEvent_h

#include "as608_test.h"
#include "gui.h"
#include <pthread.h>  // 包含线程相关的头文件
#include "touch.h"
#include "bmp.h"
#include "timer_util.h"

// 点击类型
typedef enum
{
    CLICK_DOWN_ING, // 按下中，持续触发
    CLICK_UP        // 抬起瞬间，触发一次
} ClickType;

extern int isGoodClickReady;

extern pthread_t finger_thread_id;

/*
 * 函数声明
 */

// 点击事件总入口
void click_event(int x, int y, ClickType clicktype);

// 各页面的点击处理函数
void main_page_click_event(int x, int y, ClickType clicktype);
void wechat_pay_click_event(int x, int y, ClickType clicktype);
void finger_pay_click_event(int x, int y, ClickType clicktype);
void pay_success_click_event(int x, int y, ClickType clicktype);
void enter_pay_page_event(int current_good_index);
void pay_back_click_event();
void pay_success_back_click_event();
void swapCountTime();
void close_motor_event();
void enter_pay_success_page_event();
int join_golden_finger_thread(void);

// 线程函数原型，用来执行 golden_finger
void* golden_finger_thread(void* arg);

// 创建线程来执行 golden_finger
int start_golden_finger_thread(void);

// 判断点击区域是否在指定区域内
int is_in_area(int x, int y, int x1, int y1, int width, int height);

#endif